<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Login extends CI_Controller {



    public function index() {
        $this->load->library('session');
        $this->load->model('usuario', 'usuario');

        if ($this->verificaLogado()) {
            redirect('member/home');
        } else {
            $this->validate();
        }
    }

    private function verificaLogado() {
        if (isset($this->session->userdata['logado_crf']) && $this->session->userdata['logado_crf'])
            return true;

        return false;
    }

    private function getPost() {
        $this->usuario->cpfcnpj = $this->input->post('cpfcnpj');
        $this->usuario->senha = $this->input->post('senha');
    }

    public function validate(){
        if ($_SERVER['REQUEST_METHOD'] == 'POST') {
                
            $this->getPost();

            $this->regrasValidacao();
            if ($this->form_validation->run() != false) {
                $res = $this->usuario->validate();
                if ($res != false) {
                    $res = $res[0];

                    if($res['ativo'] != '0'){
                        
                        $data= array(
                            'id_usuario' => $res['id_usuario'],
                            'nome' =>       utf8_encode($res['nome']),
                            'tpcli' =>       $res['tpcli'],
                            'regcli' =>       $res['regcli'],
                            'logado_crf' =>     true
                        );
                        
                        $this->session->set_userdata($data);
                        
                        redirect('member/home');
                        
                    }else{
                        $this->session->set_flashdata('mensagem', 'Sua conta não está ativada. <br/>Em breve você receberá um e-mail de liberação.');
                    }
                }else{
                    $this->session->set_flashdata('mensagem', 'Usuário ou senha inválidos.');
                }
            }
        }

        $this->load->view('login/login');

    }

    private function regrasValidacao(){
        $this->form_validation->set_rules('cpfcnpj', 'CPF ou CNPJ', 'trim|required');
        $this->form_validation->set_rules('senha', 'Senha', 'required');
        $this->form_validation->set_message('required', 'O campo %s é obrigatório.');
        $this->form_validation->set_error_delimiters('<p>', '</p>');
    }

}

/* End of file welcome.php */
/* Location: ./application/controllers/login.php */